package initialization

import (
	"github.com/gin-gonic/gin"
	"vpom_-system/global"
	"vpom_-system/middleware"
	"vpom_-system/router"
)

// InitRouter 初始化路由
func InitRouter() *gin.Engine {
	// 设置gin模式
	gin.SetMode(global.Config.System.Env)
	Router := gin.Default()
	// 加载中间件
	Router.Use(middleware.GinLogger(), middleware.GinRecovery(true))
	Router.Use(middleware.Cors())
	// 加载静态文件页面
	Router.Static("/static/css", "web/static/css")
	// 获取路由组对象
	routerGroup := router.RouterGroupApp
	// 设置私有和公有的路由组对象
	publicGroup := Router.Group(global.Config.System.RouterPrefix)
	privateGroup := Router.Group(global.Config.System.RouterPrefix)
	privateGroup.Use(middleware.JWTAuth())
	{
		routerGroup.InitUserRouter(privateGroup, publicGroup)
	}

	return Router
}
